package com.cssw.fyzb.core.dao.live;

import com.cssw.fyzb.core.model.dodb.CmfLive;
import com.cssw.fyzb.core.model.dodb.CmfLiveMute;
import com.cssw.fyzb.core.model.dodb.CmfLiveReport;

import com.ydn.dbframe.plugin.activerecord.Page;

import java.util.Map;

public interface  LiveReportDao {
    /**
     * 查询菜单列表
     *
     * @param page
     * @param limit
     * @param param
     * @return
     */
    Page<CmfLiveReport> list(int page, int limit, Map param);

    /**
     * 主键查找
     * @param reportId
     * @return
     */
    CmfLiveReport findOne(Long reportId);

    /**
     * 修改状态
     * @param reportId
     * @param state
     */
    void save(Long reportId, String state);

    /**
     * 举报
     *
     * @param liveId
     * @param fromUserId
     * @param toUserId
     * @param content
     * @return
     */
    Long addLiveReport(Long liveId, Long fromUserId, Long toUserId, String content);

    /**
     * 取消举报
     *
     * @param id
     * @return
     */
    void removeLiveReportById(Long id);

    /**
     * 获取举报列表
     *
     * @return
     */
    Page<CmfLiveReport> listLiveReport(Long liveId, Integer pageNumber, Integer pageSize);

}
